Theorie der rotierenden, exzentrischen Kugel

Bezugssysteme

Kartesische Koordinaten

(Kart={{1,0,0},{0,1,0},{0,0,1}})//MatrixForm

Transformationsmatrix

(rotZφ={{Cos[φ],Sin[φ],0},{-Sin[φ],Cos[φ],0},{0,0,1}})//MatrixForm;
(rotXθ={{1,0,0},{0,Cos[θ],Sin[θ]},{0,-Sin[θ],Cos[θ]}})//MatrixForm;
(rotZψ=rotZφ/.φ->ψ)//MatrixForm;
(Euler=rotZψ.rotXθ.rotZφ)//MatrixForm;

zeitabh={φ->φ[t],θ->θ[t],ψ->ψ[t], φ'-> φ'[t],θ'->θ'[t],θ''->θ''[t],ψ'->ψ'[t],x->x[t],x'->x'[t],y->y[t],y'->y'[t]};
(EulerT=Euler/.zeitabh)//MatrixForm;

IEulerT=Transpose[EulerT];

Winkelgeschwindigkeit

ω1=D[EulerT[[2]],t].(EulerT[[3]])//Simplify;
ω2=D[EulerT[[3]],t].(EulerT[[1]])//Simplify;
ω3=D[EulerT[[1]],t].(EulerT[[2]])//Simplify;
ωKs={ω1,ω2,ω3};
ωKs//MatrixForm

ωx=(EulerT.Kart[[2]]).(D[EulerT.Kart[[3]],t])//FullSimplify;
ωy=(EulerT.Kart[[3]]).(D[EulerT.Kart[[1]],t])//FullSimplify;
ωz=(EulerT.Kart[[1]]).(D[EulerT.Kart[[2]],t])//FullSimplify;
ωIs={ωx,ωy,ωz};
ωIs//MatrixForm

Geometrie

z[t_]=R-ϵ Cos[θ[t]];
S[t_]={x[t],y[t],z[t]};
M[t_]=S[t]+ϵ EulerT[[3]];
P[t_]=M[t]-R Kart[[3]];
d[t_]=ϵ EulerT[[3]]-R Kart[[3]];

JKs={{a,0,0},{0,a,0},{0,0,c}};
JIs=IEulerT.JKs.EulerT//FullSimplify;

vp=D[S[t],t]+(ωIs\[Cross]d[t])//FullSimplify;
vp//MatrixForm

Normalkraft

FN=m g -m D[(ωIs\[Cross]d[t]).Kart[[3]],t]//FullSimplify

Lagrangegleichung

U=m g S[t][[3]];
T=(m/2)(D[S[t],t].D[S[t],t])+(1/2)ωKs.JKs.ωKs;
ℒ=T-U//FullSimplify

Generalisierte Kräfte

QGx[μ_]=-μ FN  D[(1/2)((((Sqrt[vp.vp])))^2),x'[t]]//FullSimplify;
QGy[μ_]=-μ FN D[(1/2)((((Sqrt[vp.vp])))^2),y'[t]]//FullSimplify;
QGθ[μ_]=-μ FN D[(1/2)((((Sqrt[vp.vp])))^2),θ'[t]]//FullSimplify;
QGφ[μ_]=-μ FN D[(1/2)((((Sqrt[vp.vp])))^2),φ'[t]]//FullSimplify;
QGψ[μ_]=-μ FN D[(1/2)((((Sqrt[vp.vp])))^2),ψ'[t]]//FullSimplify;

Euler- Lagrangegleichungen

LagrangeGleit[μ_]=
{D[D[ℒ, x'[t]],t]-D[ℒ, x[t]]-QGx[μ]==0,
D[D[ℒ, y'[t]],t]-D[ℒ, y[t]]-QGy[μ]==0,
D[D[ℒ, θ'[t]],t]-D[ℒ,θ[t]]-QGθ[μ]==0,
D[D[ℒ, φ'[t]],t]-D[ℒ,φ[t]]-QGφ[μ]==0,
D[D[ℒ, ψ'[t]],t]-D[ℒ,ψ[t]]-QGψ[μ]==0}/.((a_)/(Sqrt[((a_)^2)]))->Sign[a];

Bewegungsgleichungen

conditions2={g->9.81,R->1,a->2.1066669486962804,c->1.937315469713705,m->((5 π)/3),ϵ->(9/80)};
conditions={g->9.81,R->0.02,a->0.000020958656023587824,c->0.000018836151792883442,m->0.13387373494497307,ϵ->0.003618585732165206};
conditionsCohen={g->9.81,R->0.025,a->(3.75^(-6)),c->(3.75^(-6)),m->0.015,ϵ->0.005};

tmax=10;
LagrangeGleitN[μ_]=LagrangeGleit[μ]/.conditions;
solGleit[μ_,ω0_]:=NDSolve[{LagrangeGleit[μ]/.conditions,x[0]==0,  x'[0]==0,y[0]==0,  y'[0]==0,θ[0]==0.1,θ'[0]==0,φ[0]==0,  φ'[0]==0,ψ[0]==0,  ψ'[0]==ω0},{x[t],y[t],θ[t],φ[t],ψ[t]},{t,0,tmax},Method->{"EquationSimplification"->"Residual"}];

Manipulate[
Sol[t_]=solGleit[μ,ω0];
Psol[t_]={S[t][[1]],S[t][[2]]}/.conditions/.Sol[t];
Plot[{Sol[t][[1,3,2]],π,(π/2)},{t,0,tmax},PlotLabel->"θ[t]",AxesLabel->{"t","rad"},PlotRange->All,PlotStyle->{Automatic,Dashed,{Thin,Dashed}}]
,{{ω0,120},1,200, Appearance -> "Labeled"},{{μ,0.5},0,0.5, Appearance -> "Labeled"}]

Analyse

Winkel

SolW[t_]=solGleit[0.5,120][[1]];
Asol[t_]=Asol[t]=Mod[{θ[t],φ[t],ψ[t]},2π]/.SolW[t];
Winkel=Plot[{Asol[t][[1]],Asol[t][[2]],Asol[t][[3]]},{t,0,5},PlotLegends->Placed[{"θ[t]","φ[t]","ψ[t]"},Right],PlotLabel->Style[Framed["Eulerwinkel modulo 2π"],16,Blue,Background->Lighter[Yellow]]]

θSol[t_]=θ[t]/.SolW[t];
φSol[t_]=φ[t]/.SolW[t];
ψSol[t_]=ψ[t]/.SolW[t];
Manipulate[
plotW[t_]=Switch[Auswahl,θ[t],θSol[t],φ[t],φSol[t],ψ[t],ψSol[t]];
Plot[plotW[t],{t,0,5},PlotRange->All]
,{Auswahl,{θ[t],φ[t],ψ[t]}}]

ψVerlauf=Plot[{ψSol[t],25θSol[t]},{t,0,5},GridLines->{{{2.067926,{Red,Dashed,Thick}}},{}},AxesLabel->{"t","rad"},PlotRange->All,PlotLegends->{"ψ(t)","25θ(t)"},PlotStyle->{Automatic,Thin},Frame->True,FrameLabel->{{"ψ [rad]","25 θ [rad]"},{"Zeit t [s]",""}}]

SolV[t_]=solGleit[0.5,120][[1]];
ωzSol[t_]=ωz/.SolV[t]/.D[SolV[t],t];
vφSol[t_]=D[φ[t],t]/.SolV[t]/.D[SolV[t],t];
vψSol[t_]=D[ψ[t],t]/.SolV[t]/.D[SolV[t],t];
vpSol[t_]=(Sqrt[vp.vp])/.conditions/.SolV[t]/.D[SolV[t],t];
Manipulate[
plot[t_]=Switch[Auswahl,ωZ,ωzSol[t],Vp,vpSol[t],(OverDot[φ]),vφSol[t],(OverDot[ψ]),vψSol[t]];
Plot[plot[t],{t,0,5},PlotRange->All]
,{Auswahl,{ωZ,Vp,(OverDot[φ]),(OverDot[ψ])}}]

Energie

Energy[t_]=U+T//FullSimplify;
SolE[t_]=SolE[t]=solGleit[0.5,120][[1]];
θSolE[t_]=θ[t]/.SolE[t];
vpSolE[t_]=(Sqrt[vp.vp])/.conditions/.SolE[t]/.D[SolE[t],t];
ESol[t_]=ESol[t]=Energy[t]/.conditions/.SolE[t]/.D[SolE[t],t];
ET=Plot[{ESol[t],((θSolE[t])/(5π)),((vpSolE[t])/2)},{t,0,5},GridLines->{{{2.067926,{Red,Dashed,Thick}}},{}},PlotRange->All,PlotStyle->{Automatic,Thin,Thin},PlotLegends->Placed[{"E(t) [J]","((θ (t))/(5  π)) [rad]","(((Subscript[V, P]) (t))/2) [(ms^(-1))]"},Right],Frame->True,FrameLabel->{"Zeit t [s]"}]

((ESol[tmax])/(ESol[0]))

Drehimpuls

LVIs=JIs.ωIs//FullSimplify;
LIs[t_]=(Sqrt[LVIs.LVIs])//FullSimplify;
LzIs[t_]=LVIs[[3]];

L=JKs.ωKs//FullSimplify;
LKs[t_]=(Sqrt[L.L])//FullSimplify;
LzKs[t_]=L[[3]];

SolL[t_]=SolL[t]=solGleit[0.5,120][[1]];
LSol[t_]=LIs[t]/.conditions/.SolL[t]/.D[SolL[t],t];
LzIsSol[t_]=LzIs[t]/.conditions/.SolL[t]/.D[SolL[t],t];
LzKsSol[t_]=LzKs[t]/.conditions/.SolL[t]/.D[SolL[t],t];
LxIsSol[t_]=LVIs[[1]]/.conditions/.SolL[t]/.D[SolL[t],t];
LyIsSol[t_]=LVIs[[2]]/.conditions/.SolL[t]/.D[SolL[t],t];

Manipulate[
plotL[t_]=Switch[Auswahl,"|L|",LSol[t],"LzIs",LzIsSol[t],"LzKs",LzKsSol[t],"LxIs",LxIsSol[t],"LyIs",LyIsSol[t]];
Plot[plotL[t],{t,0,5},PlotRange->All]
,{Auswahl,{"|L|","LzIs","LzKs","LxIs","LyIs"}}]

LzVerlauf=Plot[{LzIsSol[t],LzKsSol[t]},{t,0,5},FrameLabel->{"Zeit t [s]","Drehimpuls [\!\(\*FractionBox[\(kg\\ \*SuperscriptBox[\(m\), \(\(2\)\(\\ \)\)]\), \(s\)]\)]"},PlotLegends->{"(Subscript[Lz, Is])","(Subscript[Lz, Ks])"},PlotRange->All,Frame->True]

Erhaltungsgrösse

Zyklische Koordinaten

D[ℒ,x[t]]

D[ℒ,y[t]]

D[ℒ,φ[t]]

D[ℒ,ψ[t]]//FullSimplify

D[ℒ,x'[t]]

D[ℒ,y'[t]]

D[ℒ,φ'[t]]//FullSimplify

D[ℒ,ψ'[t]]//FullSimplify

QGφ[μ]//FullSimplify

QGψ[μ]//FullSimplify

Erhaltungsgrösse

ex=(ϵ/R);
pψ=D[ℒ, ψ'[t]]//FullSimplify;
pφ=D[ℒ, φ'[t]]//FullSimplify;
G[t_]=pφ-ex pψ//FullSimplify

JLeutwyler[t_]=-((d[t].LVIs)/R)//FullSimplify

LzIs[t]-(ϵ/R)LzKs[t]//FullSimplify

D[G[t],t]//FullSimplify

Analyse

SolG[t_]=SolG[t]=solGleit[0.5,120][[1]];
Gsol[t_]=G[t]/.conditions/.SolG[t]/.D[SolG[t],t];
DGsol[t_]=D[G[t],t]/.conditions/.SolG[t]/.D[SolG[t],t]/.D[SolG[t],{t,2}];

MG=Mean[Table[Gsol[t],{t,0,5,0.01}]]
GVerlauf=Plot[Gsol[t],{t,0,5},FrameLabel->{"Zeit t [s]","G [kg \!\(\*SuperscriptBox[\(m\), \(\(2\)\(\\ \)\)]\)(s^(-1))]"},PlotRange->{{0,5},{0.00184000,0.00184017}},Frame->True]

GSVerlauf=LogPlot[Gsol[t]/MG-1,{t,0,tmax},FrameLabel->{"Zeit t [s]","((ΔG)/(OverBar[G]))"},Frame->True,PlotRange->All]